const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');

const resolvePath = (filePath) => {
  return path.resolve(__dirname, filePath);
};

module.exports = {
  mode: 'development',
  entry: './src/app.js',
  plugins: [
    new HtmlWebpackPlugin()
  ],

  // 模块解析
  resolve: {
    // 别名配置
    alias: {
      '@': resolvePath('./src'),
      '@utils': resolvePath('./src/utils')
    },
    // 扩展名配置
    extensions: ['.js', '.json', '.xml']
  },

  // 指定引入外部扩展第三方模块的类型
  externalsType: 'script',
  // 外部扩展
  externals: {
    jquery: [
      // 第一个参数为引入第三方模块的 script 标签对于的 cdn 链接
      'https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js',
      // 第二个参数引入第三方模块导出的模块名称
      'jQuery'
    ]
  }
}